home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 1 / Cream of the Crop 1.iso / PROGRAM / DDJ0192.ARJ / CB386.H < prev    next >
C/C++ Source or Header  |  1991-09-02  |  2KB  |  85 lines

  1. /****************************************************************
  2.  *                                                              *
  3.  * CB386.H - include file for CopyBuilder 386                   *
  4.  * See makefile for compile directives                          *
  5.  * Al Williams -- August 1991                                   *
  6.  *                                                              *
  7.  ****************************************************************/
  8. #define NRTRIES 3         /* number of times to retry disk ops */
  9.  
  10. /* force codebuilder to not align */
  11. #pragma align(_bpb=1)
  12.  
  13. /* structre of disk BPB */
  14. extern struct _bpb
  15.   {
  16.   unsigned char jump[3];
  17.   char oemname[8];
  18.   unsigned short bytespersec;
  19.   unsigned char secperclust;
  20.   unsigned short ressectors;
  21.   unsigned char nrfats;
  22.   unsigned short rootsize;
  23.   unsigned short nrsectors;
  24.   char media;
  25.   unsigned short fatsectors;
  26.   unsigned short secpertrack;
  27.   unsigned short nrheads;
  28.   unsigned int hiddensecs;
  29.   unsigned int hugesectors;
  30.   unsigned char physdrive;
  31.   char notused;
  32.   unsigned char signature;      /* should be 0x29 */
  33.   unsigned int serno;
  34.   char label[11];
  35.   char type[8];
  36.   char pad[512-60];             /* rest of 512 byte sector */
  37.   } bpb;
  38.  
  39. /* various globals */
  40. extern int driveno;
  41. extern unsigned disksize;
  42. extern unsigned sectorct;
  43.  
  44. /* disk image buffer */
  45. extern unsigned char *diskbuf;
  46. /* DOS buffer used to communicate with BIOS */
  47. extern char *dosbuf;
  48. /* set by critical errors */
  49. extern int critical_err;
  50.  
  51. /* information on buffer */
  52. extern struct _bufinfo
  53.   {
  54.   char title[65];
  55.   unsigned size;
  56.   unsigned short copies;
  57.   char source[13];
  58. /* checksums (stored and computed) */
  59.   unsigned short csum, ccsum;
  60.   short dirty;
  61.   } bufinfo;
  62.  
  63. extern void (*slbreak)();    /* place to hook break handler */
  64.  
  65. /* holds disk format command */
  66. extern char fmtcmd[];
  67.  
  68. /* additional break handler */
  69. extern void (*when_break)();
  70.  
  71. /* prototypes for break handlers */
  72. void load_break();
  73. void save_break();
  74.  
  75. /* general prototypes */
  76. int sector_read(int head, int track, int sector, int drive,
  77.             unsigned char *buf,unsigned count);
  78.  
  79. int sector_write(int head, int track, int sector, int drive,
  80.             unsigned char *buf,unsigned count);
  81.  
  82. /* disable reboot */
  83. void noreboot(void);
  84. void okreboot(void);
  85.